package br.com.loja.model.entity.caixa;

import br.com.loja.model.entity.Switchable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import br.com.loja.model.entity.conta.Conta;
import br.com.loja.view.swing.model.FormField;
import br.com.loja.view.swing.model.IgnoreTableModel;
import java.io.Serializable;

/**
 * @brief Classe Caixa
 * @author David Luiz
 * @date 17/11/2014
 */
@Entity
@Table(name = "caixa")
public class Caixa implements Switchable, Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Integer idCaixa;
    private String descricao;
    @OneToOne
    private Conta conta;

    @FormField(visible = false)
    @IgnoreTableModel
    private boolean dead;

    public Caixa() {
        super();
    }

    /**
     * @return the idCaixa
     */
    public Integer getIdCaixa() {
        return idCaixa;
    }

    /**
     * @param idCaixa the idCaixa to set
     */
    public void setIdCaixa(Integer idCaixa) {
        this.idCaixa = idCaixa;
    }

    /**
     * @return the descricao
     */
    public String getDescricao() {
        return descricao;
    }

    /**
     * @param descricao the descricao to set
     */
    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    /**
     * @return the conta
     */
    public Conta getConta() {
        return conta;
    }

    /**
     * @param conta the conta to set
     */
    public void setConta(Conta conta) {
        this.conta = conta;
    }

    /**
     * @return the dead
     */
    public boolean isDead() {
        return dead;
    }

    /**
     * @param dead the dead to set
     */
    public void setDead(boolean dead) {
        this.dead = dead;
    }

}
